Ethernet has become a widely used connectivity solution because of its scalability; speeds may range from sub-gigabit to multi-gigabit. Ethernet may be used for work stations, local area networks (LANs), wide area networks (WANs), metropolitan area networks (MANs), the Internet backbone, and data centers to perform computing, storage, and networking functions. Ethernet networking systems may vary in the nature of packet processing and traffic management functions depending on the application and standard requirements.
Packet processing, traffic management, and other network processing functions are often implemented using one or more discrete devices, which may be application-specific integrated circuit (ASIC) or off-the-shelf application specific standard product (ASSP) devices, software programmable network processor devices, or a combination of standard FPGAs. ASIC, ASSP, and network processor devices may be costly to develop or difficult to upgrade. Current FPGA implementations (e.g., use of multiple FPGA chips) may not offer or scale to the desired port density, aggregation, or wire speed throughput.